package cn.csc.module.pay.controller.admin.card.vo;

import lombok.*;

import java.math.BigInteger;
import java.util.*;
import io.swagger.annotations.*;
import javax.validation.constraints.*;

/**
* 见证宝资金账户身份认证 Base VO，提供给添加、修改、详细的子 VO 使用
* 如果子 VO 存在差异的字段，请不要添加到这里，影响 Swagger 文档生成
*/
@Data
public class PayCardBaseVO {

    @ApiModelProperty(value = "第三方用户id")
    private String appUserId;

    @ApiModelProperty(value = "商户编号", required = true)
    @NotNull(message = "商户编号不能为空")
    private BigInteger merchantId;

    @ApiModelProperty(value = "会员证件类型,1-身份证；3-回乡证；4-中国护照；5-台胞证；19-外国护照；52-组织机构代码证；68-营业执照 ；73-统一社会信用代码")
    private Integer memberGlobalType;

    @ApiModelProperty(value = "身份证姓名(银行开户名称)，公司名称(银行开户名称)")
    private String memberName;

    @ApiModelProperty(value = "身份证号或组织机构代码证")
    private String memberGlobalId;

    @ApiModelProperty(value = "手机号码,初始值为绑定第一张银行卡的预留手机号,后续对此修改没有要求")
    private String mobile;

    @ApiModelProperty(value = "个体工商户标志1：是 2：否")
    private Integer indivBusinessFlag;

    @ApiModelProperty(value = "公司名称")
    private String companyName;

    @ApiModelProperty(value = "公司证件类型")
    private String companyGlobalType;

    @ApiModelProperty(value = "公司证件号码")
    private String companyGlobalId;

    @ApiModelProperty(value = "店铺id")
    private String shopId;

    @ApiModelProperty(value = "店铺名称")
    private String shopName;

    @ApiModelProperty(value = "法人标志,1-是")
    private Integer repFlag;

    @ApiModelProperty(value = "法人名称")
    private String reprName;

    @ApiModelProperty(value = "法人证件类型")
    private String reprGlobalType;

    @ApiModelProperty(value = "法人证件号码")
    private String reprGlobalId;

    @ApiModelProperty(value = "租户编号")
    private String tenantId;
}
